Skip to content

Act on the remaining PRISM#2 review items - #13

Merged
Sande33p merged 1 commit into
mainfrom
docs/release-review-followups
Oct 20, 2026
Merged

Sande33p merged 1 commit into
mainfrom
docs/release-review-followups

Conversation

@Sande33p

Copy link
Copy Markdown
Collaborator

Description

Acts on the remaining open items from the PRISM v0.1.0 review (#2).

Branch protection is now provable, not asserted. The review's open item was
right: tests/platform/test_branch_protection_contract.py reads source files,
so it shows intent rather than the live GitHub setting.
configure_branch_protection.py gains --verify, which reads the live
protection and diffs it against the policy the script applies, exiting
non-zero on any mismatch:

python tools/ci/configure_branch_protection.py \
    --repo AI-ModCon/PRISM --branch main --verify --review-count 0

Run against both repos today, every field matches. Anyone with read access can
reproduce it, and it can go in CI — which a screenshot cannot.

Two text fixes from the review: trainer_grpo.py said "meaned"; the NCBI
reference is trimmed to https://eutils.ncbi.nlm.nih.gov, which resolves,
rather than the /entrez/eutils path, which 404s.

A claim in our own docs was wrong. docs/models/intern-s2-preview.md said
Qwen/Qwen3.5-35B-A3B-Instruct is "gated on Hugging Face" and that its
HTTP 401 is a sign-in prompt. It is not. A gated repository serves its model
card with HTTP 200 and gates only file downloads — a known-gated repository
returns 200 on the same anonymous request — so 401 means the repository does
not resolve. The rest of the family does (Qwen3.5-9B, -4B, -35B-A3B,
-397B-A17B), so the -Instruct suffix looks like the error and
Qwen/Qwen3.5-35B-A3B is the nearest checkpoint that exists. The note now says
that, with the evidence table, and is explicit that the exact model behind
those defaults is unconfirmed.

The files that cite it are deliberately untouched: vendored upstream code kept
byte-identical for re-sync, excluded from lint and formatting in
pyproject.toml, and CONTRIBUTING.md forbids annotating it.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • Documentation update
  • Infrastructure, CI, or tooling

Compatibility

  • src.* import paths
  • the prism CLI surface
  • Hydra config keys
  • checkpoint keys
  • launcher flags
  • None of the above

--verify is a new read-only flag on an operator script; no existing
invocation changes behavior.

How Has This Been Tested?

tools/ci/configure_branch_protection.py --verify   match -> exit 0
                                                   mismatch -> exit 1 (both confirmed)
ruff 0.16.9 over src tests tools scripts applications examples   clean
tools/ci/check_doc_links.py                                      495 links resolve
pytest tests/platform/test_branch_protection_contract.py
       tests/test_docs_consistency.py                            25 passed
  • Platform tested on: Aurora login node, frameworks/2026.1.0.
  • Tests skipped, and why: none relevant; this touches docs, one comment and
    one operator script.

New Dependencies, Data, or Assets

None.

Checklist

  • I have performed a self-review of my own changes
  • The code follows the project's style guidelines
  • I have commented my code where the intent is not obvious
  • I have made corresponding changes to the documentation
  • I have added tests that cover this change, or explained why none are needed
  • New and existing tests pass locally
  • No secrets, credentials, or absolute institutional paths are included

--verify has no unit test: it only reads a live GitHub endpoint, so a test
would either stub the call it exists to make or require network and a token in
CI. Both exit paths were exercised by hand against the real repositories.

AI/LLM Assistance

  • AI/LLM tools were primarily used to generate code or artifacts in this PR
  • I have reviewed all such output line-by-line and understand it

Unticked pending a human read.

Additional Context

Not addressed here, and why: the SECURITY.md supported-versions table and the
two CHANGELOG promotions are all gated on the v0.1.0 tag, which NOTICE
blocks until the copyright holder is settled with Argonne tech transfer and the
other contributing institutions. Those are one commit once that question is
answered.

Three fixes and one new capability, from @wildsm's review.

Branch protection is now provable rather than asserted. The review's
open item was right: tests/platform/test_branch_protection_contract.py
reads source files, so it shows intent, not the live GitHub setting.
configure_branch_protection.py gains --verify, which reads the live
protection and diffs it against the policy the script applies, exiting
non-zero on any mismatch:

    python tools/ci/configure_branch_protection.py \
        --repo AI-ModCon/PRISM --branch main --verify --review-count 0

Run against both repos, every field matches today. That is checkable by
anyone with read access, unlike a screenshot.

trainer_grpo.py said "meaned"; it now says "averaged".

The NCBI reference is trimmed to https://eutils.ncbi.nlm.nih.gov, which
resolves, rather than the /entrez/eutils path, which 404s.

docs/models/intern-s2-preview.md carried a claim this review disproved.
It said Qwen/Qwen3.5-35B-A3B-Instruct is "gated on Hugging Face" and
that its HTTP 401 is a sign-in prompt. It is not: a gated repository
serves its model card with HTTP 200 and gates only file downloads -- a
known-gated repository returns 200 on the same anonymous request -- so
401 means the repository does not resolve. The rest of the family does
(Qwen3.5-9B, -4B, -35B-A3B, -397B-A17B), so the -Instruct suffix looks
like the error and Qwen/Qwen3.5-35B-A3B is the nearest checkpoint that
exists. The note now says that, with the evidence, and is explicit that
the exact model behind those defaults is unconfirmed.

The files that cite it are left alone deliberately. They are vendored
upstream code kept byte-identical for re-sync; pyproject.toml excludes
them from lint and formatting and CONTRIBUTING forbids annotating them,
so the correction belongs in our own doc.

Not addressed here: the SECURITY.md supported-versions table and the two
CHANGELOG promotions are gated on the v0.1.0 tag, which NOTICE blocks
until the copyright holder is settled with Argonne tech transfer.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@Sande33p
Sande33p requested a review from a team as a code owner October 20, 2026 08:55
@Sande33p
Sande33p merged commit 3249ed4 into main Oct 20, 2026
9 checks passed
@Sande33p Sande33p mentioned this pull request Oct 20, 2026
20 of 31 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant